<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  <script>
    var myarr = [11, 22, 45, 65, 11, 66, 22, 11, 11, 22]
    // 定义一个数组去重的方法
    // 1. 标准的数组去重
    /* function unique (arr) {
      // 1. 定义一个空数组
      // 2. 通过for循环往空数组中追加 
      // 2.1 如果数组有了 那么不添加
      // 2.2 如果没有我们就添加
      var temArr = []
      for (let i = 0; i < arr.length; i++) {
        if (temArr.indexOf(arr[i]) === -1) {
          temArr.push(arr[i])
        }
      }
      return temArr
    }
     // 测试
    var result = unique(myarr)
    console.log(result)
     */
    // 2. 高级
    // Set是一个构造函数 表示唯一的类型
    /* var arr1 = new Set(myarr)
    // 将Set结构转为数组
    // Array.from将类数组转为数组
    var result = Array.from(arr1)
    // console.log(typeof arr1)
    // 检测数据类型最精准方法 没有之一
    // console.log(Object.prototype.toString.call(arr1))
    console.log(result) */
    // 简化
    // var result = Array.from(new Set(myarr))
    // ...new Set(myarr)  {[11, 22, 45, 65, 66}
    var result = [...new Set(myarr)] // [11, 22, 45, 65, 66]
    console.log(result)
  </script>
</body>
</html>
